/**
* GetExpressCheckoutDetailsResponseType.java
*
* This file was auto-generated from WSDL
* by the Apache Axis 1.2.1 Jun 14, 2005 (09:15:57 EDT) WSDL2Java emitter.
*/
package PayPalAPI.api.ebay;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URLDecoder;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import eBLBaseComponents.apis.ebay.AckCodeType;
import eBLBaseComponents.apis.ebay.AddressStatusCodeType;
import eBLBaseComponents.apis.ebay.CountryCodeType;
import eBLBaseComponents.apis.ebay.GetExpressCheckoutDetailsResponseDetailsType;
import eBLBaseComponents.apis.ebay.PayPalUserStatusCodeType;
import eBLBaseComponents.apis.ebay.SeverityCodeType;
// TODO: Values are double encoded ("Custom Value" is returned as "Custom%2bValue", which decodes to "Custom+Value")
public class GetExpressCheckoutDetailsResponseType extends eBLBaseComponents.apis.ebay.AbstractResponseType implements java.io.Serializable {
/**
*
*/
private static final long serialVersionUID = 1861043331932289115L;
private static final Log LOG = LogFactory.getLog(GetExpressCheckoutDetailsResponseType.class.getName());
private eBLBaseComponents.apis.ebay.GetExpressCheckoutDetailsResponseDetailsType getExpressCheckoutDetailsResponseDetails;
public GetExpressCheckoutDetailsResponseType() {
}
public GetExpressCheckoutDetailsResponseType(
eBLBaseComponents.apis.ebay.GetExpressCheckoutDetailsResponseDetailsType getExpressCheckoutDetailsResponseDetails) {
this.getExpressCheckoutDetailsResponseDetails = getExpressCheckoutDetailsResponseDetails;
}
public GetExpressCheckoutDetailsResponseType(InputStream _is) {
BufferedReader reader = new BufferedReader(new InputStreamReader(_is));
String currentLine = null;
setGetExpressCheckoutDetailsResponseDetails(new GetExpressCheckoutDetailsResponseDetailsType());
try {
while ((currentLine = reader.readLine()) != null) {
String[] pairs = StringUtils.split(currentLine, "&");
if (LOG.isDebugEnabled()) {
LOG.debug("Read line [" + currentLine + "], split into " + pairs.length + " pairs.");
}
for (int i = 0; i < pairs.length; i++) {
String[] nvp = StringUtils.split(pairs[i], "=");
String name = nvp[0];
String value = null;
if (nvp.length == 2) {
value = URLDecoder.decode(nvp[1], "UTF-8");
}
if (LOG.isDebugEnabled()) {
LOG.debug("Read pair [" + name + "]/[" + value + "]");
}
if (isCommonField(name)) {
processCommonField(name, value);
}
// Process fields
else if (name.equals(FIELD_TOKEN)) {
getGetExpressCheckoutDetailsResponseDetails().setToken(value);
}
else if (name.equals(FIELD_EMAIL)) {
getGetExpressCheckoutDetailsResponseDetails().getPayerInfo().setPayer(value);
}
else if (name.equals(FIELD_PAYERID)) {
getGetExpressCheckoutDetailsResponseDetails().getPayerInfo().setPayerID(value);
}
else if (name.equals(FIELD_PAYERSTATUS)) {
getGetExpressCheckoutDetailsResponseDetails().getPayerInfo().setPayerStatus(PayPalUserStatusCodeType.fromString(value));
}
else if (name.equals(FIELD_SALUTATION)) {
getGetExpressCheckoutDetailsResponseDetails().getPayerInfo().getPayerName().setSalutation(value);
}
else if (name.equals(FIELD_FIRSTNAME)) {
getGetExpressCheckoutDetailsResponseDetails().getPayerInfo().getPayerName().setFirstName(value);
}
else if (name.equals(FIELD_MIDDLENAME)) {
getGetExpressCheckoutDetailsResponseDetails().getPayerInfo().getPayerName().setMiddleName(value);
}
else if (name.equals(FIELD_LASTNAME)) {
getGetExpressCheckoutDetailsResponseDetails().getPayerInfo().getPayerName().setLastName(value);
}
else if (name.equals(FIELD_SUFFIX)) {
getGetExpressCheckoutDetailsResponseDetails().getPayerInfo().getPayerName().setSuffix(value);
}
else if (name.equals(FIELD_COUNTRYCODE)) {
getGetExpressCheckoutDetailsResponseDetails().getPayerInfo().setPayerCountry(CountryCodeType.fromString(value));
}
else if (name.equals(FIELD_BUSINESS)) {
getGetExpressCheckoutDetailsResponseDetails().getPayerInfo().setPayerBusiness(value);
}
else if (name.equals(FIELD_SHIPTONAME)) {
getGetExpressCheckoutDetailsResponseDetails().getPayerInfo().getAddress().setName(value);
}
else if (name.equals(FIELD_SHIPTOSTREET)) {
getGetExpressCheckoutDetailsResponseDetails().getPayerInfo().getAddress().setStreet1(value);
}
else if (name.equals(FIELD_SHIPTOSTREET2)) {
getGetExpressCheckoutDetailsResponseDetails().getPayerInfo().getAddress().setStreet2(value);
}
else if (name.equals(FIELD_SHIPTOCITY)) {
getGetExpressCheckoutDetailsResponseDetails().getPayerInfo().getAddress().setCityName(value);
}
else if (name.equals(FIELD_SHIPTOSTATE)) {
getGetExpressCheckoutDetailsResponseDetails().getPayerInfo().getAddress().setStateOrProvince(value);
}
else if (name.equals(FIELD_SHIPTOCOUNTRY)) {
getGetExpressCheckoutDetailsResponseDetails().getPayerInfo().getAddress().setCountry(CountryCodeType.fromString(value));
}
else if (name.equals(FIELD_SHIPTOCOUNTRYNAME)) {
getGetExpressCheckoutDetailsResponseDetails().getPayerInfo().getAddress().setCountryName(value);
}
else if (name.equals(FIELD_SHIPTOZIP)) {
getGetExpressCheckoutDetailsResponseDetails().getPayerInfo().getAddress().setPostalCode(value);
}
else if (name.equals(FIELD_ADDRESSID)) {
getGetExpressCheckoutDetailsResponseDetails().getPayerInfo().getAddress().setAddressID(value);
}
else if (name.equals(FIELD_ADDRESSSTATUS)) {
getGetExpressCheckoutDetailsResponseDetails().getPayerInfo().getAddress().setAddressStatus(AddressStatusCodeType.fromString(value));
}
else if (name.equals(FIELD_CUSTOM)) {
getGetExpressCheckoutDetailsResponseDetails().setCustom(value);
}
else if (name.equals(FIELD_INVNUM)) {
getGetExpressCheckoutDetailsResponseDetails().setInvoiceID(value);
}
else if (name.equals(FIELD_PHONENUM)) {
getGetExpressCheckoutDetailsResponseDetails().setContactPhone(value);
}
else if (LOG.isErrorEnabled()) {
LOG.error("Unknown field returned in GetExpressCheckoutDetails: [" + name + "]");
}
}
}
} catch (Exception e) {
if (LOG.isErrorEnabled()) {
LOG.error("Exception caught processing response: " + e.getLocalizedMessage(), e);
}
setAck(AckCodeType.Failure);
addSeverityCode("L_SEVERITYCODE0", SeverityCodeType.Error.toString());
addErrorCode("L_ERRORCODE0", "JC1000");
addLongMessage("L_LONGMESSAGE0", "Error processing GetExpressCheckoutDetails API call");
addShortMessage("L_SHORTMESSAGE0", "Error processing request");
}
}
/**
* Gets the getExpressCheckoutDetailsResponseDetails value for this GetExpressCheckoutDetailsResponseType.
*
* @return getExpressCheckoutDetailsResponseDetails
*/
public eBLBaseComponents.apis.ebay.GetExpressCheckoutDetailsResponseDetailsType getGetExpressCheckoutDetailsResponseDetails() {
return getExpressCheckoutDetailsResponseDetails;
}
/**
* Sets the getExpressCheckoutDetailsResponseDetails value for this GetExpressCheckoutDetailsResponseType.
*
* @param getExpressCheckoutDetailsResponseDetails
*/
public void setGetExpressCheckoutDetailsResponseDetails(eBLBaseComponents.apis.ebay.GetExpressCheckoutDetailsResponseDetailsType getExpressCheckoutDetailsResponseDetails) {
this.getExpressCheckoutDetailsResponseDetails = getExpressCheckoutDetailsResponseDetails;
}
private java.lang.Object __equalsCalc = null;
public synchronized boolean equals(java.lang.Object obj) {
if (!(obj instanceof GetExpressCheckoutDetailsResponseType)) return false;
GetExpressCheckoutDetailsResponseType other = (GetExpressCheckoutDetailsResponseType) obj;
if (obj == null) return false;
if (this == obj) return true;
if (__equalsCalc != null) {
return (__equalsCalc == obj);
}
__equalsCalc = obj;
boolean _equals;
_equals = super.equals(obj) &&
((this.getExpressCheckoutDetailsResponseDetails==null && other.getGetExpressCheckoutDetailsResponseDetails()==null) ||
(this.getExpressCheckoutDetailsResponseDetails!=null &&
this.getExpressCheckoutDetailsResponseDetails.equals(other.getGetExpressCheckoutDetailsResponseDetails())));
__equalsCalc = null;
return _equals;
}
private boolean __hashCodeCalc = false;
public synchronized int hashCode() {
if (__hashCodeCalc) {
return 0;
}
__hashCodeCalc = true;
int _hashCode = super.hashCode();
if (getGetExpressCheckoutDetailsResponseDetails() != null) {
_hashCode += getGetExpressCheckoutDetailsResponseDetails().hashCode();
}
__hashCodeCalc = false;
return _hashCode;
}
}